#include <iostream>
#include <cstring> 
using namespace std;

string data[10]={
	"UDDLUULRUL",
	"UURLLLRRRU",
	"RRUURLDLRD",
	"RUDDDDUUUU",
	"URUDLLRRUU",
	"DURLRLDLRL",
	"ULLURLLRDU",
	"RDLULLRDDD",
	"UUDDUDUDLL",
	"ULRDLUURRR",
};

int ans=0;
int vis[10][10];

bool dfs(int i,int j){
	if(i<0||j<0||i>9||j>9){
		return true;
	}
	if(vis[i][j]==1){
		return false;
	}
	vis[i][j]=1;
	switch(data[i][j]){
		case 'U':
			return dfs(i-1,j);
		case 'D':
			return dfs(i+1,j);
		case 'L':
			return dfs(i,j-1);
		case 'R':
			return dfs(i,j+1);
		default :
			return false;
	}
}

void RTZ(){
	for(int i=0;i<10;i++){
		for(int j=0;j<10;j++){
			vis[i][j]=0;	
		}
	}
}

int main(){
	for(int i=0;i<10;i++){
		for(int j=0;j<10;j++){
			RTZ();
			if(dfs(i,j)){
				ans++;
			}
		}
	}
	cout<<ans;
	return 0;
}
